#!/usr/bin/python
# -*-coding:UTF-8 -*-

# ========================
# @Time  : 2021/2/22
# @Author: Sunny
# ========================

#-----------------------元类的应用-----------------------------------
"""
通过type去创建类
需要传三个参数：
1.类名(str)
2.继承的父类(tuple) 如果不传值，会默认继承object
3.类的属性方法(dict)
"""

# 第一种
res = type(1)
print(res)


class Base:
    base_name = 'base_name'
    pass

#在外部定义函数，在type里面当参数传入，可以变成类里面的方法
def func01(self):
    print('这函数是MyClass类中的方法')

def __init__(self,age):
    self.age = age


#第二种
My_class = type('MyClass',
            (Base,),
            {'name':'my','attr':19,'func':func01,'__init__':__init__})


# print(Base)
print(My_class)

# m1 = Myclass(18)
# print(m1.name)
# print(m1.attr)
# print(m1.func)
# print(m1.base_name)
# print(m1.age)
# print(type(m1))

